package com.itheima.polymorpic.practice01;

public class Test3Polymorpic {

    public static void main(String[] args) {
        // 1. 向上转型 : 父类引用指向子类对象
        F f = new Z();
        f.method();
        // 多态的弊端: 不能调用子类特有的成员
        // f.show();

        // A: 直接创建子类对象
        // B: 向下转型

        // 2. 向下转型 : 从父类类型, 转换回子类类型
        Z z = (Z) f;
        z.show();

    }
}

class F {
    public void method() {
        System.out.println("F...method");
    }
}

class Z extends F {
    public void method() {
        System.out.println("Z...method");
    }

    public void show() {
        System.out.println("我是子类特有的方法...show");
    }
}